<?php
/* SVN FILE: $Id$ */
/**
 * Short description for file.
 *
 * In this file, you set up routes to your controllers and their actions.
 * Routes are very important mechanism that allows you to freely connect
 * different urls to chosen controllers and their actions (functions).
 *
 * PHP versions 4 and 5
 *
 * CakePHP(tm) :  Rapid Development Framework (http://www.cakephp.org)
 * Copyright 2005-2008, Cake Software Foundation, Inc. (http://www.cakefoundation.org)
 *
 * Licensed under The MIT License
 * Redistributions of files must retain the above copyright notice.
 *
 * @filesource
 * @copyright     Copyright 2005-2008, Cake Software Foundation, Inc. (http://www.cakefoundation.org)
 * @link          http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
 * @package       cake
 * @subpackage    cake.app.config
 * @since         CakePHP(tm) v 0.2.9
 * @version       $Revision$
 * @modifiedby    $LastChangedBy$
 * @lastmodified  $Date$
 * @license       http://www.opensource.org/licenses/mit-license.php The MIT License
 */
/**
 * Here, we are connecting '/' (base path) to controller called 'Pages',
 * its action called 'display', and we pass a param to select the view file
 * to use (in this case, /app/views/pages/home.ctp)...
 */
	//Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
        Router::connect('/', array('controller' => 'textos', 'action' => 'destaques'));
/**
 * ...and connect the rest of 'Pages' controller's urls.
 */
	Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));

	Router::connect('/admin/:controller/:action/*', array('controller' => ':controller', 'action' => ':action','admin'=>1));
        //get all controllers
        $Configure = &Configure::getInstance();
        $controllerList = $Configure->listObjects('controller');

        // rota para categorias
        Router::connect('/categorias/index/*', array('controller' => 'categorias', 'action' => 'index'));
        Router::connect('/categorias/*', array('controller' => 'categorias', 'action' => 'index'));

        // rota para seções
        Router::connect('/secoes/index/*', array('controller' => 'secoes', 'action' => 'index'));
        Router::connect('/secoes/*', array('controller' => 'secoes', 'action' => 'index'));

        // rota para aplicativos_usuarios
        Router::connect('/aplicativos_usuarios/:action/*', array('controller' => 'aplicativos_usuarios'));

        // rota para textos
        //Router::connect('/textos/:action/*', array('controller' => 'textos'));
        //Router::connect('/textos/*', array('controller' => 'textos', 'action' => 'exibe'));
        Router::connect('textos/(?!novo|destaques|edit|exibe)(.*)', array('controller' => 'textos', 'action' => 'exibe'));


        foreach($controllerList as $controllerName)
        {
            //map all controllers (apart from app and pages to their name
            if($controllerName != "App" & $controllerName != "Pages")
            {
                //route the normal name
                Router::connect('/' . $controllerName . '/:action/*', array('controller' => $controllerName));

                //get the name with first letter lower
                $firstLetterLower = strtolower(substr($controllerName,0,1));
                $lowerCaseName = $firstLetterLower . substr($controllerName,1);

                //route the name with first letter lowered
                Router::connect('/' . $lowerCaseName . '/:action/*', array('controller' => $lowerCaseName));
            }
        }

         // Custom URL route
        Router::connect('/*', array('controller' => 'mondanos', 'action' => 'perfil'));
?>